Software Quality Analysis by Code Clones in Industrial Legacy Software
نویسندگان
چکیده
Existing researches suggest that the code clone (duplicated code) is one of the factors that degrades the design and the structure of software and lowers the software quality such as readability and changeability. However, the influence of code clones on software quality has not been quantitatively clarified yet. In this paper, we have tried to quantitatively clarify the relation between code clones and the software reliability and maintainability of twenty years old software. As a result, we found that modules having code clones (clone-included modules) are more reliable than modules having no code clone (non-clone modules) on average. Nevertheless, the modules having very large code clones (more than 200 SLOC) are less reliable than non-clone modules. We also found that clone-included modules are less maintainable (having greater revision number on average) than non-clone modules; and, modules having larger code clone are less maintainable than modules having smaller code clone.
منابع مشابه
Analysis and Transformation of Idiomatic Crosscutting Concerns in Legacy Software Systems
Legacy software systems often suffer from code quality problems. Maintenance of legacy systems can therefore be costly, and the value of legacy systems may diminish due to a lack of adaptability and reliability. Many code quality problems are caused by idiomatic implementation of crosscutting concerns. This work studies the idiomatic implementation of crosscutting concerns in legacy systems, an...
متن کاملEnhancing Generic Pipeline Model for Code Clone Detection using Divide and Conquer Approach
Code clone is known as identical copies of the same instances or fragments of source codes in software. Current code clone research focuses on the detection and analysis of code clones in order to help software developers identify code clones in source codes and reuse the source codes in order to decrease the maintenance cost. Many approaches such as textual based comparison approach, token bas...
متن کاملCode Clone Analysis Environment for Software Maintenance
Recently, code clone has been regarded as one of factors that make software maintenance more difficult. A code clone is a code fragment in a source code that is identical or similar to another. For example, if we modify a code fragment which has code clones, it is necessary to consider whether we have to modify each of its code clones. There are two ways of maintenance support for code clones. ...
متن کاملQuality Driven Re-engineering Framework
Context. Software re-engineering has been identified as a business critical activity to improve legacy systems in industries. It is the process of understanding existing software and improving it, for modified or improved functionality, better maintainability, configurability, reusability, or other quality goals. However, there is little knowledge to integrate software quality attributes into t...
متن کاملDagstuhl Seminar 12071 Software Clone Management Towards Industrial
This report documents the program and the outcomes of Dagstuhl Seminar 12071 “Software Clone Management Towards Industrial Application”. Software clones are identical or similar pieces of code or design. A lot of research has been devoted to software clones. Unlike previous research, this seminar put a particular emphasis on industrial application of software clone management methods and tools ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2002